perm filename UTILS[1,3]1 blob
sn#000187 filedate 1972-03-11 generic text, type T, neo UTF8
(LAP PRELIST SUBR)
(PUSH P 1)
(PUSH P 2)
(MOVEI 2 (QUOTE 1))
(MOVE 1 0 P)
(CALL 2 (E *LESS))
(JUMPN 1 TAG3)
(MOVE 1 -1 P)
(JUMPN 1 TAG2)
TAG3 (MOVEI 1 (QUOTE NIL))
(JRST 0 TAG1)
TAG2 (HRRZ@ 1 -1 P)
(PUSH P 1)
(HLRZ@ 1 -2 P)
(PUSH P 1)
(MOVE 1 -2 P)
(CALL 1 (E SUB1))
(MOVE 2 1)
(EXCH 1 -1 P)
(CALL 2 (E PRELIST))
(POP P 2)
(CALL 2 (E XCONS))
(SUB P (C 0 0 1 1))
TAG4
TAG1 (SUB P (C 0 0 2 2))
(POPJ P)
NIL
(LAP SUFLIST SUBR)
(PUSH P 1)
(PUSH P 2)
(MOVEI 2 (QUOTE 1))
(MOVE 1 0 P)
(CALL 2 (E *LESS))
(JUMPN 1 TAG3)
(MOVE 1 -1 P)
(JUMPN 1 TAG2)
TAG3 (MOVE 1 -1 P)
(JRST 0 TAG1)
TAG2 (HRRZ@ 1 -1 P)
(PUSH P 1)
(MOVE 1 -1 P)
(CALL 1 (E SUB1))
(MOVE 2 1)
(POP P 1)
(CALL 2 (E SUFLIST))
TAG4
TAG1 (SUB P (C 0 0 2 2))
(POPJ P)
NIL
(LAP STR SUBR)
(CALL 1 (E EXPLODEC))
(PUSH P 1)
(MOVEI 1 (QUOTE /"))
(CALL 1 (E NCONS))
(MOVE 2 1)
(POP P 1)
(CALL 2 (E *APPEND))
(MOVEI 2 (QUOTE /"))
(CALL 2 (E XCONS))
(JCALL 1 (E READLIST))
NIL
(LAP STRP SUBR)
(CALL 1 (E EXPLODE))
(HLRZ@ 2 1)
(CAIE 2 (QUOTE /"))
(TDZA 1 1)
(MOVEI 1 (QUOTE T))
(POPJ P)
NIL
(LAP STRLEN SUBR)
(CALL 1 (E EXPLODEC))
(JCALL 1 (E LENGTH))
NIL
(LAP AT SUBR)
(CALL 1 (E EXPLODEC))
(JCALL 1 (E READLIST))
NIL
(LAP CAT SUBR)
(PUSH P 2)
(CALL 1 (E EXPLODEC))
(EXCH 1 0 P)
(CALL 1 (E EXPLODEC))
(PUSH P 1)
(MOVEI 1 (QUOTE /"))
(CALL 1 (E NCONS))
(MOVE 2 1)
(POP P 1)
(CALL 2 (E *APPEND))
(MOVE 2 1)
(POP P 1)
(CALL 2 (E *APPEND))
(MOVEI 2 (QUOTE /"))
(CALL 2 (E XCONS))
(JCALL 1 (E READLIST))
NIL
(LAP SEQ SUBR)
(PUSH P 2)
(CALL 1 (E EXPLODEC))
(EXCH 1 0 P)
(CALL 1 (E EXPLODEC))
(POP P 2)
(JCALL 2 (E EQUAL))
NIL
(LAP SUBSTR SUBR)
(PUSH P 1)
(PUSH P 2)
(PUSH P 3)
(MOVE 1 3)
(CALL 1 (E NUMBERP))
(JUMPE 1 TAG2)
(MOVE 1 -2 P)
(CALL 1 (E EXPLODEC))
(PUSH P 1)
(MOVE 1 -2 P)
(CALL 1 (E SUB1))
(MOVE 2 1)
(POP P 1)
(CALL 2 (E SUFLIST))
(MOVE 2 0 P)
(CALL 2 (E PRELIST))
(JRST 0 TAG1)
TAG2 (MOVE 1 -2 P)
(CALL 1 (E EXPLODEC))
(PUSH P 1)
(MOVE 1 -2 P)
(CALL 1 (E SUB1))
(MOVE 2 1)
(POP P 1)
(CALL 2 (E SUFLIST))
TAG3
TAG1 (MOVEM 1 -2 P)
(MOVEI 1 (QUOTE /"))
(CALL 1 (E NCONS))
(MOVE 2 1)
(EXCH 1 -2 P)
(CALL 2 (E *APPEND))
(MOVEI 2 (QUOTE /"))
(CALL 2 (E XCONS))
(SUB P (C 0 0 3 3))
(JCALL 1 (E READLIST))
NIL
(LAP PRINTSTR SUBR)
(CALL 1 (E PRINC))
(JCALL 1 (E TERPRI))
NIL
(LAP NEQ SUBR)
(PUSH P 1)
(PUSH P 2)
(CAME 1 2)
(JRST 0 TAG1)
(TDZA 1 1)
TAG1 (MOVEI 1 (QUOTE T))
(SUB P (C 0 0 2 2))
(POPJ P)
NIL
(LAP NEQUAL SUBR)
(CALL 2 (E EQUAL))
(JUMPE 1 TAG1)
(TDZA 1 1)
TAG1 (MOVEI 1 (QUOTE T))
(POPJ P)
NIL
(LAP LEQUAL SUBR)
(CALL 2 (E *GREAT))
(JUMPE 1 TAG1)
(TDZA 1 1)
TAG1 (MOVEI 1 (QUOTE T))
(POPJ P)
NIL
(LAP GEQUAL SUBR)
(CALL 2 (E *LESS))
(JUMPE 1 TAG1)
(TDZA 1 1)
TAG1 (MOVEI 1 (QUOTE T))
(POPJ P)
NIL
(LAP &VECTOR SUBR)
(JSP 6 SPECBIND)
(0 0 (SPECIAL &X&))
(0 0 (SPECIAL &Y&))
(PUSH P 1)
(PUSH P 2)
(PUSH P 3)
(PUSH P 4)
(MOVEM 3 (SPECIAL &X&))
(MOVE 1 3)
(CALL 1 (E ATOM))
(MOVEM 4 (SPECIAL &Y&))
(PUSH P 1)
(MOVE 1 4)
(CALL 1 (E ATOM))
(PUSH P 1)
(PUSH P (C 0 0 (QUOTE NIL) 0))
(PUSH P (C 0 0 (QUOTE NIL) 0))
(MOVE 1 -7 P)
(JUMPE 1 TAG6)
(MOVEI 1 (QUOTE &X&))
(CALL 1 (E NCONS))
(MOVE 2 -6 P)
(CALL 2 (E XCONS))
(MOVEM 1 -1 P)
(JRST 0 TAG5)
TAG6 (MOVEI 1 (QUOTE &Y&))
(CALL 1 (E NCONS))
(MOVEI 2 (QUOTE &X&))
(CALL 2 (E XCONS))
(MOVE 2 -6 P)
(CALL 2 (E XCONS))
(MOVEM 1 -1 P)
TAG7
TAG5 (MOVE 1 -3 P)
(JUMPE 1 TAG12)
(MOVE 1 -2 P)
(JUMPE 1 TAG12)
(MOVE 1 -1 P)
(CALL 1 (E *EVAL))
(JRST 0 TAG2)
TAG12
TAG14
TAG1 (MOVE 1 -3 P)
(JUMPN 1 TAG21)
(MOVE 1 -5 P)
(JUMPE 1 TAG17)
TAG21 (MOVE 1 -2 P)
(JUMPN 1 TAG22)
(MOVE 1 -4 P)
(JUMPE 1 TAG17)
TAG22 (JRST 0 TAG16)
TAG17 (MOVE 1 0 P)
(JRST 0 TAG2)
TAG23
TAG16 (MOVE 1 -3 P)
(JUMPN 1 TAG25)
(HLRZ@ 1 -5 P)
(MOVEM 1 (SPECIAL &X&))
(HRRZ@ 1 -5 P)
(MOVEM 1 -5 P)
(JUMPN 1 TAG25)
TAG25 (MOVE 1 -2 P)
(JUMPN 1 TAG27)
(HLRZ@ 1 -4 P)
(MOVEM 1 (SPECIAL &Y&))
(HRRZ@ 1 -4 P)
(MOVEM 1 -4 P)
(JUMPN 1 TAG27)
TAG27 (MOVE 1 -1 P)
(CALL 1 (E *EVAL))
(CALL 1 (E NCONS))
(MOVE 2 1)
(MOVE 1 0 P)
(CALL 2 (E *APPEND))
(MOVEM 1 0 P)
(JRST 0 TAG1)
TAG2 (SUB P (C 0 0 10 10))
(JRST 0 SPECSTR)
NIL
(LAP &REPLACE SUBR)
(PUSH P 1)
(PUSH P 2)
(PUSH P 3)
(JUMPE 2 TAG2)
(MOVEI 5 (QUOTE 1))
(HLRZ@ 4 2)
(CALL 5 (E &REP1))
(JRST 0 TAG1)
TAG2 (MOVE 1 0 P)
TAG3
TAG1 (SUB P (C 0 0 3 3))
(POPJ P)
NIL
(LAP &REP1 SUBR)
(PUSH P 1)
(PUSH P 2)
(PUSH P 3)
(PUSH P 4)
(PUSH P 5)
(CALL 1 (E ATOM))
(JUMPE 1 TAG2)
(MOVE 2 5)
(MOVE 1 4)
(CALL 2 (E EQUAL))
(JUMPE 1 TAG4)
(MOVE 3 -2 P)
(HRRZ@ 2 -3 P)
(MOVEI 1 (QUOTE NIL))
(CALL 3 (E &REPLACE))
(CALL 1 (E NCONS))
(JRST 0 TAG3)
TAG4 (MOVE 1 0 P)
(CALL 1 (E ADD1))
(MOVE 5 1)
(MOVE 4 -1 P)
(MOVE 3 -2 P)
(MOVE 2 -3 P)
(MOVEI 1 (QUOTE NIL))
(CALL 5 (E &REP1))
(MOVEI 2 (QUOTE NIL))
(CALL 2 (E XCONS))
TAG5
TAG3 (JRST 0 TAG1)
TAG2 (MOVE 2 5)
(MOVE 1 4)
(CALL 2 (E EQUAL))
(JUMPE 1 TAG7)
(MOVE 3 -2 P)
(HRRZ@ 2 -3 P)
(HLRZ@ 1 -4 P)
(CALL 3 (E &REPLACE))
(HRRZ@ 2 -4 P)
(CALL 2 (E CONS))
(JRST 0 TAG1)
TAG7 (HRRZ@ 1 -4 P)
(PUSH P 1)
(HLRZ@ 1 -5 P)
(PUSH P 1)
(MOVE 1 -2 P)
(CALL 1 (E ADD1))
(MOVE 5 1)
(MOVE 4 -3 P)
(MOVE 3 -4 P)
(MOVE 2 -5 P)
(EXCH 1 -1 P)
(CALL 5 (E &REP1))
(POP P 2)
(CALL 2 (E XCONS))
(SUB P (C 0 0 1 1))
TAG10
TAG1 (SUB P (C 0 0 5 5))
(POPJ P)
NIL
(LAP &DECOMPOSE SUBR)
(MOVEI 3 (QUOTE NIL))
(PUSH P 2)
(CALL 3 (E &DEC1))
(POP P 1)
(POPJ P)
NIL
(LAP &DEC1 SUBR)
(PUSH P 1)
(PUSH P 2)
(PUSH P 3)
(JUMPN 1 TAG2)
(JUMPE 2 TAG3)
(TDZA 1 1)
TAG3 (MOVEI 1 (QUOTE T))
(JRST 0 TAG1)
TAG2 (CALL 1 (E ATOM))
(JUMPE 1 TAG4)
(MOVE 1 -2 P)
(CAIN 1 (QUOTE _))
(JRST 0 TAG5)
(CALL 2 (E SET))
(JUMPN 1 TAG5)
(JRST 0 TAG5)
(TDZA 1 1)
TAG5 (MOVEI 1 (QUOTE T))
(JRST 0 TAG1)
TAG4 (MOVE 1 2)
(CALL 1 (E ATOM))
(JUMPE 1 TAG10)
(JUMPN 2 TAG13)
(MOVEI 2 (QUOTE (_)))
(MOVE 1 -2 P)
(CALL 2 (E EQUAL))
(JUMPN 1 TAG11)
TAG13 (MOVE 1 -2 P)
(CALL 1 (E &SETNIL))
(JUMPN 1 TAG11)
(TDZA 1 1)
TAG11 (MOVEI 1 (QUOTE T))
(JRST 0 TAG1)
TAG10 (HLRZ@ 1 -2 P)
(CAIE 1 (QUOTE _))
(JRST 0 TAG14)
(MOVEI 3 (QUOTE T))
(HRRZ@ 1 -2 P)
(CALL 3 (E &DEC1))
(JUMPN 1 TAG15)
(MOVE 3 0 P)
(HRRZ@ 2 -1 P)
(MOVE 1 -2 P)
(CALL 3 (E &DEC1))
(JUMPN 1 TAG15)
(TDZA 1 1)
TAG15 (MOVEI 1 (QUOTE T))
(JRST 0 TAG1)
TAG14 (JUMPE 3 TAG17)
(MOVEI 3 (QUOTE T))
(HLRZ@ 2 2)
(HLRZ@ 1 -2 P)
(CALL 3 (E &DEC1))
(JUMPE 1 TAG21)
(MOVEI 3 (QUOTE T))
(HRRZ@ 2 -1 P)
(HRRZ@ 1 -2 P)
(CALL 3 (E &DEC1))
(JUMPN 1 TAG20)
TAG21 (TDZA 1 1)
TAG20 (MOVEI 1 (QUOTE T))
(JRST 0 TAG1)
TAG17 (MOVEI 3 (QUOTE NIL))
(HLRZ@ 2 -1 P)
(HLRZ@ 1 -2 P)
(CALL 3 (E &DEC1))
(MOVEM 1 0 P)
(MOVEI 3 (QUOTE NIL))
(HRRZ@ 2 -1 P)
(HRRZ@ 1 -2 P)
(CALL 3 (E &DEC1))
(JUMPE 1 TAG25)
(MOVE 1 0 P)
(JUMPN 1 TAG24)
TAG25 (TDZA 1 1)
TAG24 (MOVEI 1 (QUOTE T))
TAG22
TAG1 (SUB P (C 0 0 3 3))
(POPJ P)
NIL
(LAP &SETNIL SUBR)
(PUSH P 1)
(JUMPE 1 TAG3)
(CAIE 1 (QUOTE _))
(JRST 0 TAG2)
TAG3 (MOVEI 1 (QUOTE NIL))
(JRST 0 TAG1)
TAG2 (CALL 1 (E ATOM))
(JUMPE 1 TAG4)
(MOVEI 2 (QUOTE NIL))
(MOVE 1 0 P)
(CALL 2 (E SET))
(JRST 0 TAG1)
TAG4 (HLRZ@ 1 0 P)
(CALL 1 (E &SETNIL))
(HRRZ@ 1 0 P)
(CALL 1 (E &SETNIL))
TAG5
TAG1 (SUB P (C 0 0 1 1))
(POPJ P)
NIL (LAP EXIT SUBR)
(47000 0 12)
NIL
(SETQ QT (QUOTE /' ))
(SETQ LPAR (QUOTE /( ))
(SETQ RPAR (QUOTE /) ))
(SETQ LABR (QUOTE /< ))
(SETQ RABR (QUOTE /> ))
(SETQ LSBR (QUOTE /[ ))
(SETQ RSBR (QUOTE /] ))
(SETQ DASH (QUOTE /- ))
(SETQ STAR (QUOTE /* ))
(SETQ PLUSS (QUOTE /+ ))
(SETQ SLASH (QUOTE // ))
(SETQ BLANK (QUOTE / ))
(SETQ COLON (QUOTE /: ))
(SETQ COMMA (QUOTE /, ))
(SETQ PERIOD (QUOTE /. ))
(SETQ DOLLAR (QUOTE /$ ))
(SETQ EQSIGN (QUOTE /= ))
(SETQ LARROW (QUOTE /← ))
(SETQ DBQUOTE (QUOTE /" ))
(SETQ PERCENT (QUOTE /% ))
(SETQ CIRCLEX (QUOTE /⊗ ))
(SETQ UNDERBAR (QUOTE /_ ))
(SETQ SEMICOLON (QUOTE /; ))
(SETQ TAB (INTERN (ASCII 11)))
(SETQ LF (INTERN (ASCII 12)))
(SETQ VT (INTERN (ASCII 13)))
(SETQ FF (INTERN (ASCII 14)))
(SETQ CR (INTERN (ASCII 15)))
(SETQ ALTMODE (INTERN (ASCII 175)))
(SETQ TRUE T)
(SETQ FALSE (SETQ F NIL))
(SETQ BASE (SETQ IBASE 10.))
(PROG (&UNBOUND&))
(SETQ *NOPOINT T)
(NOUUO NIL)